Component({
  data: {
    flag: false, // 表示有无登录  登录了应该是 true  未登录应该是 false
  },

  // 组件一加载 就应该获取用户的登录状态 设置 flag
  lifetimes: {
    created() {
      // 这里不能调用 setData
    },

    attached() {
      // 1. 根据 token 控制 flag 从而控制 slot  => 控制页面显示/空白
      this.setData({
        flag: getApp().token ? true : false,
      })

      // 2. 根据 token 控制是否去登录页面
      if (!getApp().token) {
        const pages = getCurrentPages() // 获取页面栈
        const page = pages[pages.length - 1] // 获取当前页面
        const backUrl = page.route // 获取当前页面的路径(小细节 少个/)
        console.log('当前页面的路径:', backUrl) // 打印一下

        // 如果未登录 页面的初始化逻辑都不用执行
        page.onLoad = () => {} // 重置页面的 onLoad 钩子
        page.onShow = () => {} // 重置页面的 onShow 钩子

        // 这个项目中登录页 是不能主动过来的 都是被迫来的!!!
        wx.redirectTo({ url: `/pages/login/index?backUrl=/${backUrl}` }) // 首页 登录
        wx.toast('你先去登录吧')
      }
    },
  },
})
